﻿#ifndef MEDIASTREAMIO_H
#define MEDIASTREAMIO_H

#include <QThread>

extern "C"{
#include <libavformat/avformat.h>
}

class mediaStreamIOPrivate;
class ioQueue;

class mediaStreamIO : public QThread
{
    Q_OBJECT
public:
    explicit mediaStreamIO(QObject *parent = 0);
	~mediaStreamIO();

    void     setFormat(AVFormatContext* format);
    void     seek(__int64 pos);
    ioQueue* getQueue();

    void     stopRead();

private:
    void initQueue();

protected:
    virtual void run();

signals:

public slots:

private:
    mediaStreamIOPrivate* d;
};

#endif // MEDIASTREAMIO_H
